Ulm Ux Api icon

Ulm Ux Api

(1 review)

Starlink - TMF666 - Retrieve billingAccount by ID

Uses Cases

This usecase is used to retrieve the Customer's billingAccount Details based on the account number.

/billingAccount/{id}

[GET]

https://[localhost]:[port]/{env}/ulm-ux/v1/{businessId}/billingAccount/{id}
CWP URL

https://nonprod.cwp.esb.cloud.lla.com/preprod/ulm-ux-cwp/ulm-ux/v1/PA/billingAccount/{id}

LCPR URL

https://nonprod.esb.cloud.lla.com/test/ulm-ux/ulm-ux/v1/PR/billingAccount/{id}

LC URL (including Latam)

https://nonprod.lc.esb.cloud.lla.com/test/ulm-ux-lc/ulm-ux/v1/JM/billingAccount/{id}

LCR URL

https://nonprod.lcr.esb.cloud.lla.com/test/ulm-ux-lcr/ulm-ux/v1/CR/billingAccount/{id}

cURL Request

curl --location 'https://nonprod.cwp.esb.cloud.lla.com/preprod/ulm-ux-cwp/ulm-ux/v1/PA/billingAccount/{id}' \
--header 'client_id: xxxxxxx' \
--header 'client_secret: xxxxxxx' \
--header 'X-Correlation-ID: {{$guid}}'

URL PARAMS

nametypedescriptionrequired
businessIdstring2 letter ISO 3166 country code (JM,KY,BB,TT,PR,CR,CO,SV,GT,HN,DO,PA) identifying the business unit.Y
idstringBilling Account NumberY
nametypedescriptionrequired
client_idstringThe client_id identifying the channel. Minimum characters: 5Y
client_secretstringPassword associated with the client_id. Minimum characters: 5Y
X-Correlation-IDstringIdentifier that correlates HTTP request between a client and server.
Any identification model (UUDI, checksum, etc.) can be used, as long as it is a unique value to differentiate a transaction.
N

Body

NOTE:

  1. All Use Cases are listed and referenced to their examples on Use Case section
  2. All definitions are described on RAML, inside of Anypoint Design Center.
Definitions

Possible response success

This section defines all the possible data structures received by the client and that must be considered satisfactory at the time of responding to the method.

[ 200 ]

OK - request processed successfully, response body contains an entity corresponding to the requested resource.

NOTE:

  1. All Use Cases are listed and referenced to their examples on Use Case section
  2. All definitions are described on RAML, inside of Anypoint Design Center.

Response

In this section all the possible data structures received by the client at the moment of responding the method are defined. This is an example for PR market.


{
    "id": "361013670000",
    "accountType": "R",
    "description": "Residencial",
    "name": "Starlink QA ITB LEON PRUEBAS",
    "paymentStatus": "Active",
    "state": "C",
    "accountBalance": [
        {
            "amount": {
                "value": 0.00,
                "unit": "PAB"
            },
            "balanceType": "NetPayable"
        },
        {
            "amount": {
                "value": 0.00,
                "unit": "PAB"
            },
            "balanceType": "LastBillAmount",
            "validFor": {
                "endDateTime": "1858-11-17T00:00:00.000-05:18"
            }
        },
        {
            "amount": {
                "value": 0.00,
                "unit": "PAB"
            },
            "balanceType": "LastPayment Amount",
            "validFor": {
                "endDateTime": "1858-11-17T00:00:00.000-05:18"
            }
        },
        {
            "amount": {
                "value": 0.00,
                "unit": "PAB"
            },
            "balanceType": "Overdue Amount"
        },
        {
            "amount": {
                "value": 0.00,
                "unit": "PAB"
            },
            "balanceType": "DepositRequired"
        },
        {
            "amount": {
                "value": 0.00,
                "unit": "PAB"
            },
            "balanceType": "WrittenOffAmount"
        },
        {
            "amount": {
                "value": 0.00,
                "unit": "PAB"
            },
            "balanceType": "TotalQuery"
        },
        {
            "amount": {
                "value": 0.00,
                "unit": "PAB"
            },
            "balanceType": "TotalOutstandingBalance"
        },
        {
            "amount": {
                "value": 0.00,
                "unit": "PAB"
            },
            "balanceType": "DepositHeld"
        },
        {
            "amount": {
                "value": 0.00,
                "unit": "PAB"
            },
            "balanceType": "Total Query Tax"
        },
        {
            "amount": {
                "value": 0.00,
                "unit": "PAB"
            },
            "balanceType": "TotalAdjustmentCredit"
        },
        {
            "amount": {
                "value": 0.00,
                "unit": "PAB"
            },
            "balanceType": "TotalDepositPaid"
        },
        {
            "amount": {
                "value": 0.00,
                "unit": "PAB"
            },
            "balanceType": "TotalServiceChargeCredit"
        },
        {
            "amount": {
                "value": 0.00,
                "unit": "PAB"
            },
            "balanceType": "TotalRewards"
        },
        {
            "amount": {
                "value": 0.00,
                "unit": "PAB"
            },
            "balanceType": "TotalAvailablePointsAmount"
        }
    ],
    "billStructure": {
        "cycleSpecification": {
            "id": "A",
            "paymentDueDate": "1858-11-17T00:00:00.000Z",
            "billingDay": 17
        },
        "presentationMedia": [
            {
                "id": "B",
                "name": "Paper and Email Bills"
            },
            {
                "id": "S",
                "name": "BillLanguage"
            }
        ]
    },
    "contact": [
        {
            "contactMedium": [
                {
                    "mediumType": "BillingAddress",
                    "characteristic": {
                        "street1": "PANAMA",
                        "street2": "PANAMA",
                        "city": "PANAMA",
                        "stateOrProvince": "PANAMA"
                    }
                },
                {
                    "mediumType": "Telephone",
                    "characteristic": {
                        "phoneNumber": "SAT00004",
                        "contactType": "serviceNumber"
                    }
                }
            ],
            "relatedParty": {
                "@referredType": "RelatedParty"
            }
        },
        {
            "contactName": "PRUEBA QA",
            "partyRoleType": "OWNER",
            "contactMedium": [],
            "relatedParty": {
                "@referredType": "RelatedParty"
            }
        }
    ],
    "creditLimit": {
        "unit": "PAB",
        "value": 0.00
    },
    "defaultPaymentMethod": {},
    "financialAccount": {
        "id": "361013670000",
        "@referredType": "FinancialAccount"
    },
    "paymentPlan": [
        {
            "priority": 0,
            "planType": "9",
            "status": "",
            "@Type": "SupportsRecurringPayments"
        }
    ],
    "relatedParty": [
        {
            "id": "JUAN1234",
            "name": "Starlink QA ITB LEON PRUEBAS",
            "role": "customer",
            "@type": "Customer",
            "@referredType": "Customer",
            "@baseType": "RelatedParty",
            "characteristic": [
                {
                    "name": "DocumentType",
                    "value": "PP"
                },
                {
                    "name": "DocumentNumber",
                    "value": "JUAN1234"
                },
                {
                    "name": "FirstName",
                    "value": "Starlink QA ITB",
                    "valueType": "string"
                },
                {
                    "name": "LastName",
                    "value": "LEON PRUEBAS",
                    "valueType": "string"
                },
                {
                    "name": "Date-Of-Birth",
                    "value": "03-Feb-1988 00:00:00",
                    "valueType": "string"
                },
                {
                    "name": "StartDate",
                    "value": "2026-09-07T11:09:21.000-05:00",
                    "valueType": "DateTime"
                },
                {
                    "name": "Customer Identity",
                    "valueType": "array",
                    "value": [
                        {
                            "DocumentType": "PP",
                            "DocumentNumber": "JUAN1234",
                            "DocumentDescription": "Pasaporte"
                        }
                    ]
                }
            ]
        },
        {
            "id": "0",
            "role": "MigratedAccount"
        },
        {
            "id": "LIME",
            "role": "legalEntity"
        },
        {
            "@type": "Account",
            "characteristic": [
                {
                    "name": "BaseAccountType",
                    "value": "RES"
                }
            ]
        },
        {
            "id": "990000",
            "name": "Residencial",
            "role": "marketingCategory"
        }
    ]
}

Possible response error

In this section all the possible data structures received by the client are defined and that must be considered as unsatisfactory when responding to the method.

[ 400 ]

Bad Request - the request could not be understood by the server due to malformed syntax. The client SHOULD NOT repeat the request without modifications.

{
  "errors" : [{
      "code" : 400,
      "message" : "The request is invalid or not properly formed.",
      "description" : "Malformed request syntax, invalid request message framing, or deceptive request routing."
    }]
}
[ 401 ]

Unauthorized - The request has not been applied because it lacks valid authentication credentials for the target resource.

{
  "errors" : [{
      "code" : 401,
      "message" : "The user could not be authenticated for this request.",
      "description" : "The request has not been applied because it lacks valid authentication credentials for the target resource."
    }]
}
[ 404 ]

Not Found - server has not found a resource with that URI. This may be temporary and permanent condition. This status code is commonly used when the server does not wish to reveal exactly why the request has been refused, or when no other response is applicable.

{
    "errors": [
        {
            "code": 404,
            "message": "LLA : Account billing details not found for reference id:xxxxxxxxxx",
            "description": "NOACCTSFOUND-No Accounts found-xxxxxxxxxxxx"
        }
    ]
}
[ 500 ]

Internal Server Error - server encountered an error processing request. This should not happen normally, but it is a generic error message, given when no more specific message is suitable.

{
  "errors" : [{
      "code" : 500,
      "message" : "Internal Server Error",
      "description": "The request failed due to an internal error."
    }]
}
[ 501 ]

Not implemented - indicates that the server does not support the functionality required to fulfill the request. This is the appropriate response when the server does not recognize the request method and is not capable of supporting it for any resource.

{
  "errors" : [{
      "code" : 501,
      "message" : "Not implemented",
      "description" : "Operation GET /service for Business Id: xxxx not implemented"
    }]
  }

Response

Definitions

Each of the request parameters is detailed.

FieldTypeDescriptionRequired
idstringBilling account identifierY
namestringBilling account nameN
descriptionstringBilling account descriptionN
accountTypestringBilling account type/classificationN
statestringBilling account status/stateN
paymentStatusstringPayment status of billing accountN
lastModifiedstringLast modification timestampN
@typestringTMF entity typeN
accountBalanceArrayAccount balances associated with the billing accountN
accountBalance.balanceTypestringType of balanceN
accountBalance.amountobjectBalance amount informationN
accountBalance.amount.valuenumberMonetary value of balanceN
accountBalance.amount.unitstringCurrency of the balance amountN
accountBalance.validForobjectValidity period of balanceN
accountBalance.validFor.startDateTimestringBalance validity start dateN
accountBalance.validFor.endDateTimestringBalance validity end dateN
accountRelationshipArrayRelationships to other accountsN
accountRelationship.relationshipTypestringRelationship typeN
accountRelationship.validForobjectRelationship validityN
accountRelationship.validFor.startDateTimestringRelationship start dateN
accountRelationship.validFor.endDateTimestringRelationship end dateN
accountRelationship.accountobjectRelated account detailsN
accountRelationship.account.idstringRelated account identifierN
accountRelationship.account.namestringRelated account nameN
accountRelationship.account.descriptionstringRelated account descriptionN
accountRelationship.account.@typestringRelated account typeN
billStructureobjectBilling cycle and presentation configurationN
billStructure.cycleSpecificationobjectBilling cycle detailsN
billStructure.cycleSpecification.idstringBilling cycle identifierN
billStructure.cycleSpecification.billingDaynumberBilling day of monthN
billStructure.cycleSpecification.paymentDueDatestringPayment due dateN
billStructure.cycleSpecification.frequencystringBilling frequencyN
billStructure.cycleSpecification.namestringBilling cycle nameN
billStructure.cycleSpecification.dateShiftnumberBilling date shift valueN
billStructure.presentationMediaArrayBill presentation preferencesN
billStructure.presentationMedia.idstringPresentation medium codeN
billStructure.presentationMedia.namestringPresentation medium descriptionN
contactArrayContact information associated with accountN
contact.contactNamestringContact nameN
contact.contactTypestringContact typeN
contact.partyRoleTypestringRole of contact against accountN
contact.relatedPartyobjectRelated party details for contactN
contact.relatedParty.idstringRelated party identifierN
contact.relatedParty.namestringRelated party nameN
contact.relatedParty.rolestringRelated party roleN
contact.relatedParty.@referredTypestringType of referred related partyN
contact.contactMediumArrayContact channelsN
contact.contactMedium.mediumTypestringContact medium typeN
contact.contactMedium.preferredbooleanIndicates preferred contact methodN
contact.contactMedium.characteristicobjectContact medium characteristicsN
contact.contactMedium.characteristic.contactTypestringContact classificationN
contact.contactMedium.characteristic.phoneNumberstringPhone numberN
contact.contactMedium.characteristic.emailAddressstringEmail addressN
contact.contactMedium.characteristic.street1stringAddress line 1N
contact.contactMedium.characteristic.street2stringAddress line 2N
contact.contactMedium.characteristic.citystringCityN
contact.contactMedium.characteristic.stateOrProvincestringState or provinceN
contact.contactMedium.characteristic.countrystringCountryN
contact.contactMedium.characteristic.postCodestringPostal codeN
contact.contactMedium.characteristic.entrancestringEntrance/building referenceN
contact.contactMedium.characteristic.informalAddressstringInformal address descriptionN
creditLimitobjectCredit limit informationN
creditLimit.valuenumberCredit limit amountN
creditLimit.unitstringCredit limit currencyN
defaultPaymentMethodobjectDefault payment methodN
defaultPaymentMethod.idstringPayment method codeN
defaultPaymentMethod.namestringPayment method descriptionN
financialAccountobjectAssociated financial accountN
financialAccount.idstringFinancial account identifierN
financialAccount.@referredTypestringReferenced financial account typeN
financialAccount.accountBalanceobjectFinancial account balanceN
financialAccount.accountBalance.balanceTypestringFinancial account balance typeN
financialAccount.accountBalance.amountobjectFinancial balance amountN
financialAccount.accountBalance.amount.valuenumberFinancial balance valueN
financialAccount.accountBalance.amount.unitstringFinancial balance currencyN
financialAccount.accountBalance.validForobjectFinancial balance validityN
financialAccount.accountBalance.validFor.startDateTimestringFinancial balance validity start dateN
financialAccount.accountBalance.validFor.endDateTimestringFinancial balance validity end dateN
paymentPlanArrayPayment plan detailsN
paymentPlan.planTypestringPayment plan typeN
paymentPlan.prioritynumberPayment plan priorityN
paymentPlan.statusstringPayment plan statusN
paymentPlan.paymentFrequencystringPayment frequency codeN
paymentPlan.@TypestringPayment plan classificationN
characteristicArrayAdditional account characteristicsN
characteristic.namestringCharacteristic nameN
characteristic.valueanyCharacteristic valueN
characteristic.valueTypestringDatatype of characteristic valueN
relatedPartyArrayParties related to billing accountN
relatedParty.idstringRelated party identifierN
relatedParty.namestringRelated party nameN
relatedParty.valuestringRelated party valueN
relatedParty.rolestringRelated party roleN
relatedParty.@typestringRelated party typeN
relatedParty.@baseTypestringRelated party base typeN
relatedParty.@referredTypestringReferred type of related partyN
relatedParty.characteristicArrayCharacteristics of related partyN
relatedParty.characteristic.namestringCharacteristic nameN
relatedParty.characteristic.valueanyCharacteristic valueN
relatedParty.characteristic.valueTypestringCharacteristic value datatypeN

Reviews